Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- TAIL RECURSION



  37 powerful Linux shell commands

To work on Linux platform, you cannot avoid using shell commands to complete some tasks. These tasks can be as simple as list files in some directories or find some text in some file, or can be as complex as monitoring processes. In this post, we will share 37 powerful Linux shell commands.   Task Commands 1 Delete file with 0 byte(empty file) find . -type f -size 0 -exec rm -rf {} \;find . type f -size 0 -delete 2 Check process memory consumption ps -e -o "%C : %p : %z : %a"|sort -k...

   Linux command,List     2013-09-16 07:47:16

  How to secure an Ubuntu Apache web server

Securing server software is not a straightforward task. Not all of our operating environments are the same, leading to a variety of potential security vulnerabilities. However, using a few basic configuration and security options, you can stay a little ahead of where you want to be. 1. Fail2ban Fail2ban is a Python-based intrusion prevention software that detects and blocks malicious IP addresses from multiple unsuccessful attempts at software logins. In other words, if someone is attempt...

   Unix server security,Log,.htaccess,Cache     2011-12-27 09:25:32

  Translating math into code with examples in Java, Racket, Haskell and Python

Discrete mathematical structures form the foundation of computer science.These structures are so universal that most research papers in the theory of computation, programming languages and formal methods present concepts in terms of discrete mathematics rather than code.The underlying assumption is that the reader will know how to translate these structures into a faithful implementation as a working program.A lack of material explaining this translation frustrates outsiders.What deepens that fr...

   Math,Algorithms,Formula,Program,Python     2011-11-14 08:43:15

  Python internals: how callables work

[The Python version described in this article is 3.x, more specifically - the 3.3 alpha release of CPython.] The concept of a callable is fundamental in Python. When thinking about what can be "called", the immediately obvious answer is functions. Whether it’s user defined functions (written by you), or builtin functions (most probably implemented in C inside the CPython interpreter), functions were meant to be called, right? Well, there are also methods, but they’re not very ...

   Python,Callable work,Rationale     2012-03-24 05:20:27

  Currying in Python

What is Currying? Currying is like a kind of incremental binding of function arguments. Let’s define a simple function which takes 5 arguments: 1def f(a, b, c, d, e):2    print(a, b, c, d, e) In a language where currying is supported, f is a function which takes one argument (a) and returns a function which takes 4 arguments. This means that f(5) is the following function: 1def g(b, c, d, e):2    f(5, b, c, d, e) We could emulate this behavior the...

   Python,Curring,Binding,Implement     2012-03-19 12:59:10

  Java vs F#

Dr Cliff Click of Azul Systems, specialists in manycore JVM systems, recently published a blog post about the performance of Java compared primarily to C and C++ but also discussing C# and .NET. Three of Cliff's comments are of particular interest:Under the heading "Places where C/C++ beats Java for obvious reasons":"Value Types, such as a 'Complex' type require a full object in Java." - Dr Cliff ClickWhat Cliff forgot to mention is that .NET also provides value types and a far more compell...

   Java,F#,Performance,JVM     2012-03-07 05:07:31

  Optimization Tricks used by the Lockless Memory Allocator

With the releasing of the Lockless Memory Allocator under the GPL version 3.0 license, we can now discuss more of the optimization tricks used inside it. Many of these are things you wouldn't want to use in normal code. However, when speed is the ultimate goal, sometimes we need to break a few rules and use code that is a little sneaky.The SlabA slab is a well-known technique for allocating fixed size objects. For a given object size, a chunk of memory is divided up into smaller regions of that ...

   Optimization,Memory allocation     2011-11-16 08:02:16

  GDC 2012: How Vector Unit made the leap from console to mobile games

Matt Small, creative director at independent developer Vector Unit, thought his small studio would focus on consoles forever when it was working on Hydro Thunder Hurricane for Xbox Live Arcade. But then the smartphone and tablet market picked up, and mobile devices started to offer increasing amounts of processing power. That increase in power opened up new opportunities for the people at Vector Unit, which had years of developing for consoles. So the studio worked with Tegra chipmaker Nv...

   Advice,Game design,Palm,Phone,Change     2012-03-14 13:46:22

  How I Quickly Test and Validate Startup Ideas

Since I’ve technically been unemployed now for a week, I’ve spent most of that time brainstorming some new ideas and putting them into a Google Spreadsheet.This week I began going through that list and pulling out the ones I think have a chance and I narrowed a pretty large list down to just a few.Let’s take one of the examples from my list. It doesn’t have a name, so let’s just call it Patient Connect.The idea behind Patient Connect is that it integrates with ...

   Startup,Idea,Choose,Validation,Verify,Invest     2011-10-28 10:14:41

  Time-saving tips Linux users should know

As a programmer or system administrator, we have more chances of working on *nix platforms. It's tough experience when first start use *nix as we need to face a black screen without knowing what's behind it. Now, if we can have some resources to rely on, then we will find the beautify of *nix. They are fast, efficient and most importantly sexy. Below are some great tips for helping Linux users get used to Linux. This list is a bit long. So be patient. To get more information on a command mention...

   Linux,Tips     2013-09-03 22:30:48